/*
 * 
 * 
 */

package DigimonAdventure.Things;

import DigimonAdventure.Database.Acc;
import DigimonAdventure.Database.Armor;
import DigimonAdventure.Database.Boost;
import DigimonAdventure.Database.Item;
import DigimonAdventure.Database.Shield;
import DigimonAdventure.Database.Weapon;
import java.util.ArrayList;

/**
 *
 * @author Kris Derril Siregar
 *         Benz Louis
 */
public final class Shop extends AbstractNPC{
    private ArrayList <Item> ShopItem = new ArrayList<Item>(11);
    private ArrayList <Weapon>  ShopWeapon = new ArrayList<Weapon>(15);
    private ArrayList <Armor> ShopArmor = new ArrayList<Armor>(15);
    private ArrayList <Shield> ShopShield = new ArrayList<Shield>(15);
    private ArrayList <Boost> ShopBoost = new ArrayList<Boost>(15);
    private ArrayList <Acc> ShopAcc = new ArrayList<Acc>(3);

    public Shop(){
    /**
     * Item yang dijual di toko
     */
        ShopItem.add(Item.pot1);
        ShopItem.add(Item.pot2);
        ShopItem.add(Item.pot3);
        ShopItem.add(Item.pot4);
        ShopItem.add(Item.pot5);
        ShopItem.add(Item.pot6);
        ShopItem.add(Item.pot7);
        ShopItem.add(Item.pot8);
        ShopItem.add(Item.pot9);
        ShopItem.add(Item.pot10);
        ShopItem.add(Item.exp1);
    /**
     * Armor yang dijual di toko
     */
        ShopArmor.add(Armor.SArm1);
        ShopArmor.add(Armor.SArm2);
        ShopArmor.add(Armor.SArm3);
        ShopArmor.add(Armor.HArm1);
        ShopArmor.add(Armor.HArm2);
        ShopArmor.add(Armor.HArm3);
        ShopArmor.add(Armor.WArm1);
        ShopArmor.add(Armor.WArm2);
        ShopArmor.add(Armor.WArm3);
        ShopArmor.add(Armor.DArm1);
        ShopArmor.add(Armor.DArm2);
        ShopArmor.add(Armor.DArm3);
        ShopArmor.add(Armor.AArm1);
        ShopArmor.add(Armor.AArm2);
        ShopArmor.add(Armor.AArm3);
    /**
     * Weapon yang dijual di toko
     */
        ShopWeapon.add(Weapon.SWpn1);
        ShopWeapon.add(Weapon.SWpn2);
        ShopWeapon.add(Weapon.SWpn3);
        ShopWeapon.add(Weapon.HWpn1);
        ShopWeapon.add(Weapon.HWpn2);
        ShopWeapon.add(Weapon.HWpn3);
        ShopWeapon.add(Weapon.VWpn1);
        ShopWeapon.add(Weapon.VWpn2);
        ShopWeapon.add(Weapon.VWpn3);
        ShopWeapon.add(Weapon.DWpn1);
        ShopWeapon.add(Weapon.DWpn2);
        ShopWeapon.add(Weapon.DWpn3);
        ShopWeapon.add(Weapon.AWpn1);
        ShopWeapon.add(Weapon.AWpn2);
        ShopWeapon.add(Weapon.AWpn3);
    /**
     * Shield yang dijual di toko
     */
        ShopShield.add(Shield.SShd1);
        ShopShield.add(Shield.SShd2);
        ShopShield.add(Shield.SShd3);
        ShopShield.add(Shield.HShd1);
        ShopShield.add(Shield.HShd2);
        ShopShield.add(Shield.HShd3);
        ShopShield.add(Shield.VShd1);
        ShopShield.add(Shield.VShd2);
        ShopShield.add(Shield.VShd3);
        ShopShield.add(Shield.WShd1);
        ShopShield.add(Shield.WShd2);
        ShopShield.add(Shield.WShd3);
        ShopShield.add(Shield.AShd1);
        ShopShield.add(Shield.AShd2);
        ShopShield.add(Shield.AShd3);
    /**
     * Booster yang dijual di toko
     */
        ShopBoost.add(Boost.SBst1);
        ShopBoost.add(Boost.SBst2);
        ShopBoost.add(Boost.SBst3);
        ShopBoost.add(Boost.VBst1);
        ShopBoost.add(Boost.VBst2);
        ShopBoost.add(Boost.VBst3);
        ShopBoost.add(Boost.WBst1);
        ShopBoost.add(Boost.WBst2);
        ShopBoost.add(Boost.WBst3);
        ShopBoost.add(Boost.DBst1);
        ShopBoost.add(Boost.DBst2);
        ShopBoost.add(Boost.DBst3);
        ShopBoost.add(Boost.ABst1);
        ShopBoost.add(Boost.ABst2);
        ShopBoost.add(Boost.ABst3);
    /**
     * Accesory yang dijual di toko
     */
        ShopAcc.add(Acc.Acc1);
        ShopAcc.add(Acc.Acc2);
        ShopAcc.add(Acc.Acc3);
    }
    public Item getShopItemAt(int x){
        if(ShopItem.size() <= x || ShopItem.get(x) == null){
            return Item.None;
        }else {return ShopItem.get(x);}
    }
        public Armor getShopArmorAt(int x){
        if(ShopArmor.size() <= x || ShopArmor.get(x) == null){
            return Armor.None;
        }else {return ShopArmor.get(x);}
    }
    public Weapon getShopWeaponAt(int x){
        if(ShopWeapon.size() <= x || ShopWeapon.get(x) == null){
            return Weapon.None;
        }else {return ShopWeapon.get(x);}
    }
    public Shield getShopShieldAt(int x){
        if(ShopShield.size() <= x || ShopShield.get(x) == null){
            return Shield.None;
        }else {return ShopShield.get(x);}
    }
    public Boost getShopBoostAt(int x){
        if(ShopBoost.size() <= x || ShopBoost.get(x) == null){
            return Boost.None;
        }else {return ShopBoost.get(x);}
    }
    public Acc getShopAccAt(int x){
        if(ShopAcc.size() <= x || ShopAcc.get(x) == null){
            return Acc.None;
        }else {return ShopAcc.get(x);}
    }
}
